Evolution of a Java just-in-time compiler for IA-32 platforms

نویسندگان

  • Toshio Suganuma
  • Takeshi Ogasawara
  • Kiyokuni Kawachiya
  • Mikio Takeuchi
  • Kazuaki Ishizaki
  • Akira Koseki
  • Tatsushi Inagaki
  • Toshiaki Yasue
  • Motohiro Kawahito
  • Tamiya Onodera
  • Hideaki Komatsu
  • Toshio Nakatani
چکیده

Java just-in-time compiler for IA-32 platforms T. Suganuma T. Ogasawara K. Kawachiya M. Takeuchi K. Ishizaki A. Koseki T. Inagaki T. Yasue M. Kawahito T. Onodera H. Komatsu T. Nakatani Java has gained widespread popularity in the industry, and an efficient Java virtual machine (JVM ) and just-in-time (JIT) compiler are crucial in providing high performance for Java applications. This paper describes the design and implementation of our JIT compiler for IA-32 platforms by focusing on the recent advances achieved in the past several years. We first present the dynamic optimization framework, which focuses the expensive optimization efforts only on performance-critical methods, thus helping to manage the total compilation overhead. We then describe the platformindependent features, which include the conversion from the stack-semantic Java bytecode into our register-based intermediate representation (IR) and a variety of aggressive optimizations applied to the IR. We also present some techniques specific to the IA-32 used to improve code quality, especially for the efficient use of the small number of registers on that platform. Using several industry-standard benchmark programs, the experimental results show that our approach offers high performance with low compilation overhead. Most of the techniques presented here are included in the IBM JIT compiler product, integrated into the IBM Development Kit for Microsoft Windows , Java Technology Edition Version 1.4.0.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

The StarJIT Compiler: A Dynamic Compiler for Managed Runtime Environments

Dynamic compilers (or Just-in-Time [JIT] compilers) are a key component of managed runtime environments. This paper describes the design and implementation of the StarJIT compiler, a dynamic compiler for Java Virtual Machines and Common Language Runtime platforms. The goal of the StarJIT compiler is to build an infrastructure to research the influence of managed runtime environments on Intel ar...

متن کامل

Efficient Implementation of Strict Floating-point Semantics

IA-32 processors yield different results of floating-point operations from other processors, even though they are all compliant with IEEE 754. The Java specifications need runtime systems to implement the FP-strict semantics, which other IEEE 754 compliant processors naturally fulfill. We implemented the semantics on a Java Just-in-Time compiler for IA-32. This study reveals that single-precisi...

متن کامل

Practical Experiences with Java Compilation

The Java programming language and the underlying virtual machine model have introduced new complexities for compilation. Various approaches ranging from just in time (JIT) compilation to ahead of time (AOT) compilation are being explored with the aim of improving the performance of Java programs. The hurdles facing the achievement of high performance in Java and the strengths and weaknesses of ...

متن کامل

Title of Thesis: A RETARGETABLE OPTIMIZING JAVA-TO-C COMPILER FOR EMBEDDED SYSTEMS

Title of Thesis: A RETARGETABLE OPTIMIZING JAVA-TO-C COMPILER FOR EMBEDDED SYSTEMS Ankush Varma, M.S., 2003 Thesis directed by: Professor Shuvra S. Bhattacharyya Department of Electrical and Computer Engineering The Java programming language is achieving greater acceptance in high-end embedded systems such as cellphones and PDAs. However, lowend embedded platforms, such as DSPs or microcontroll...

متن کامل

A Retargetable Optimizing Java-to-C Compiler for Embedded Systems

Title of Thesis: “A Retargetable Optimizing Java-to-C Compiler for Embedded Systems” Degree candidate: Ankush Varma Degree and year: Master of Science, 2003. Thesis directed by: Professor Shuvra S. Bhattacharyya Department of Electrical and Computer Engineering University of Maryland, College Park The Java programming language is achieving greater acceptance in high-end embedded systems such as...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • IBM Journal of Research and Development

دوره 48  شماره 

صفحات  -

تاریخ انتشار 2004